///
/// @ProjectName:    flutter_cpp_sdk
/// @Package:        ffi
/// @ClassName:      TestMod
/// @Description:     描述
/// @Author:         wujehy
/// @Time:     21-2-17 下午9:27
///
import "Base.dart";
export 'base_types.dart';

// NOTE wujehy 这里进行对c 的 符号表进行绑定
final nativeTestFunc_Sync = nativeLib
    .lookup<NativeFunction<Void_Function_Int64_Int32_func>>("TestFunc_Sync")
    .asFunction<Void_Function_Int64_Int_Function>();

final nativeTestFunc_Async = nativeLib
    .lookup<NativeFunction<Void_Function_Int64_Int32_func>>("TestFunc_Async")
    .asFunction<Void_Function_Int64_Int_Function>();

typedef TestFunc_Customize_func = Void Function(Int64, Int32, Pointer<Utf8>,
    Int32, Int32, Pointer<Utf8>, Pointer<Utf8>, Int32);
typedef TestFunc_Customize_Function = void Function(
    int, int, Pointer<Utf8>, int, int, Pointer<Utf8>, Pointer<Utf8>, int);

final nativeTestFunc_Customize = nativeLib
    .lookup<NativeFunction<TestFunc_Customize_func>>("TestFunc_Customize")
    .asFunction<TestFunc_Customize_Function>();
